/**
 * 项目名：	Rumba Plan
 * 
 * 版权所有(C)，上海海鼎信息工程股份有限公司，2006，所有权利保留。
 * 
 * 文件名：	IProcessLog.java
 * 模块说明：	
 * 修改历史：
 * 2006-11-9 - lxm - 创建。
 */
package com.hd123.rumba.log;

import java.util.Date;

import com.hd123.rumba.domain.IDomain;
import com.hd123.rumba.exception.BusinessException;
import com.hd123.rumba.runtime.IPersistent;

/**
 * 处理过程日志 | 实体 | 接口类
 * <p>
 * 
 * BK = domain + processClassName + ownerKey[] + processUuid + itemNo<br>
 * BK = processUuid + itemNo
 * 
 * @author lxm
 * 
 */
public interface IProcessLog extends IPersistent {

  /** 所属域 */
  public IDomain getDomain() throws BusinessException;

  public void setDomain(IDomain domain) throws BusinessException;

  /** 处理过程类名 */
  public String getProcessClassName() throws BusinessException;

  public void setProcessClassName(String processClassName) throws BusinessException;

  /** 处理过程实例标识 */
  public String getProcessUuid() throws BusinessException;

  public void setProcessUuid(String processUuid) throws BusinessException;

  /** 处理过程标题 */
  public String getProcessCaption() throws BusinessException;

  public void setProcessCaption(String processCaption) throws BusinessException;

  /** 所有者关键字1 */
  public String getOwnerKey1() throws BusinessException;

  public void setOwnerKey1(String ownerKey1) throws BusinessException;

  /** 所有者关键字2 */
  public String getOwnerKey2() throws BusinessException;

  public void setOwnerKey2(String ownerKey2) throws BusinessException;

  /** 所有者关键字3 */
  public String getOwnerKey3() throws BusinessException;

  public void setOwnerKey3(String ownerKey3) throws BusinessException;

  /** 所有者关键字4 */
  public String getOwnerKey4() throws BusinessException;

  public void setOwnerKey4(String ownerKey4) throws BusinessException;

  /** 序号 */
  public int getItemNo() throws BusinessException;

  public void setItemNo(int itemNo) throws BusinessException;

  /** 处理过程开始时间 */
  public Date getStartTime() throws BusinessException;

  public void setStartTime(Date startTime) throws BusinessException;

  /** 操作人 */
  public String getOperator() throws BusinessException;

  public void setOperator(String operator) throws BusinessException;

  /** 发生时间 */
  public Date getTime() throws BusinessException;

  public void setTime(Date time) throws BusinessException;

  /** 类型。取值参见常量CProcessLog.VALUE_TYPE_*。 */
  public Integer getType() throws BusinessException;

  public void setType(Integer type) throws BusinessException;
  
  /** 属性：日志名。 */
  public String getLoggerName() throws BusinessException;
  
  public void setLoggerName(String loggerName) throws BusinessException;

  /** 消息字符串 */
  public String getMessage() throws BusinessException;

  public void setMessage(String message) throws BusinessException;

}
